package com.example.common;

public class Result {
    //    返回接口状态码
    private String code;
    //    报错信息返回给前端，以便知晓后台出现什么问题
    private String msg;
    //    用Object类接受所有返回的数据
    private Object data;


    //    返回成功的方法(不需要数据的时候)
    public static Result success() {
        Result result = new Result();
        result.setCode("200");
        result.setMsg("请求成功");
        return result;
    }

    //    返回成功的方法(需要数据的时候)
    public static Result success(Object data) {
        Result result = new Result();
        result.setDate(data);
        return result;
    }

    //    返回失败的方法(不需要数据的时候)
    public static Result error() {
        Result result = new Result();
        result.setCode("500");
        result.setMsg("系统异常");
        return result;
    }

    //    返回成功的方法(需要数据的时候)
    public static Result error(String code,String msg) {
        Result result = new Result();
        result.setCode(code);
        result.setMsg(msg);
        return result;
    }

    public static Result error(String msg) {
        Result result = new Result();
        result.setCode("500");
        result.setMsg(msg);
        return result;
    }

    public Result() {
    }

    public Result(String code, String msg, Object date) {
        this.code = code;
        this.msg = msg;
        this.data = date;
    }

    /**
     * 获取
     *
     * @return code
     */
    public String getCode() {
        return code;
    }

    /**
     * 设置
     *
     * @param code
     */
    public void setCode(String code) {
        this.code = code;
    }

    /**
     * 获取
     *
     * @return msg
     */
    public String getMsg() {
        return msg;
    }

    /**
     * 设置
     *
     * @param msg
     */
    public void setMsg(String msg) {
        this.msg = msg;
    }

    /**
     * 获取
     *
     * @return date
     */
    public Object getDate() {
        return data;
    }

    /**
     * 设置
     *
     * @param date
     */
    public void setDate(Object date) {
        this.data = date;
    }

    public String toString() {
        return "Result{code = " + code + ", msg = " + msg + ", date = " + data + "}";
    }
}
